//
//  THViewModel.h
//  MengLiao
//
//  Created by xiuxin on 2022/7/15.
//  Copyright © 2022 HZMengLiao. All rights reserved.
//
#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

typedef void(^THViewModelCallBack)(NSDictionary *parms);

@interface THViewModel : NSObject

/// 当前ViewController的标题
@property (nonatomic,copy,nullable) NSString *title;
/// 是否隐藏导航栏 default is NO
@property (nonatomic,assign) BOOL hidenNavigationBar;
/// 导航栏颜色
@property (nonatomic,retain,nullable) UIColor *navigationBarColor;
/// 导航栏标题颜色
@property (nonatomic,retain,nullable) UIColor *navigationBarTextColor;
/// 导航栏标题字体
@property (nonatomic,retain,nullable) UIFont *navigationBarTextFont;

/// 是否支持全屏侧滑返回, 与FDFullscreenPopGesture中的属性相对应
@property (nonatomic,assign) BOOL  fd_interactivePopDisabled;
/// 控制器ViewController执行viewDidLoad时是否需要拉取网络数据
@property (nonatomic,assign) BOOL fetchDataWhenViewDidLoad;
/// 控制器ViewController执行viewWillAppear时是否需要拉取网络数据
@property (nonatomic,assign) BOOL fetchDataWhenViewWillAppear;

/// 控制器ViewController反向传值 callBack,为了避免delegate,Block,RAC信号源使用无法统一,现统一为Block
@property (nonatomic,copy,nullable) THViewModelCallBack callBack;

/// 校验当前页面是否需要登录操作 default is  NO
/// 减少分散在工程中一堆登录/未登录的校验,直接在源头校验
@property (nonatomic,assign) BOOL needLogin;
/// 忽略导航栏设置 default is NO
@property (nonatomic,assign) BOOL ignoreNarSet;


/// 初始化配置(不可主动调用,仅供内部使用)
- (void)commit;
@end

NS_ASSUME_NONNULL_END
